From e604fd0385006d63af449c1961756c1f100b2c13 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=C3=98yvind=20Kol=C3=A5s?= Date: Fri, 18 Aug 2017 22:46:26 +0200 Subject: [PATCH] Add the BablConversion as first argument of all conversions This is neccesary to be able to access state of source/destination from within registered conversions. --- babl/babl-conversion.c | 29 ++++---- babl/babl-conversion.h | 23 +++--- babl/babl-core.c | 18 ++--- babl/babl-internal.h | 9 +++ babl/babl-palette.c | 34 +++++---- babl/babl-types.h | 7 +- babl/base/model-gray.c | 37 ++++++---- babl/base/model-rgb.c | 35 +++++---- babl/base/model-ycbcr.c | 12 ++-- babl/base/type-float.c | 6 +- babl/base/type-half.c | 14 ++-- babl/base/type-u15.c | 33 +++++---- babl/base/type-u16.c | 14 ++-- babl/base/type-u32.c | 14 ++-- babl/base/type-u8.c | 14 ++-- extensions/16bit.c | 4 +- extensions/CIE.c | 52 ++++++++------ extensions/HCY.c | 16 ++--- extensions/HSL.c | 16 ++--- extensions/HSV.c | 16 ++--- extensions/cairo.c | 30 ++++---- extensions/fast-float.c | 20 +++--- extensions/float-half.c | 28 ++++---- extensions/float.c | 12 ++-- extensions/gegl-fixups.c | 32 ++++----- extensions/gggl-lies.c | 128 ++++++++++++++++----------------- extensions/gggl-table-lies.c | 56 +++++++-------- extensions/gggl-table.c | 60 ++++++++-------- extensions/gggl.c | 136 +++++++++++++++++------------------ extensions/gimp-8bit.c | 56 +++++++-------- extensions/grey.c | 6 +- extensions/naive-CMYK.c | 16 ++--- extensions/simple.c | 78 ++++++++++---------- extensions/sse-half.c | 28 ++++---- extensions/sse2-float.c | 30 ++++---- extensions/sse2-int16.c | 4 +- extensions/sse2-int8.c | 18 ++--- extensions/sse4-int8.c | 14 ++-- extensions/two-table.c | 14 ++-- extensions/ycbcr.c | 8 +-- 40 files changed, 628 insertions(+), 549 deletions(-) diff --git a/babl/babl-conversion.c b/babl/babl-conversion.c index dbdce50..766e6c4 100644 --- a/babl/babl-conversion.c +++ b/babl/babl-conversion.c @@ -26,15 +26,15 @@ #include "babl-db.h" #include "babl-ref-pixels.h" -static Babl * -conversion_new (const char *name, - int id, - Babl *source, - Babl *destination, - BablFuncLinear linear, - BablFuncPlane plane, - BablFuncPlanar planar, - void *user_data) +Babl * +_conversion_new (const char *name, + int id, + Babl *source, + Babl *destination, + BablFuncLinear linear, + BablFuncPlane plane, + BablFuncPlanar planar, + void *user_data) { Babl *babl = NULL; @@ -281,7 +281,7 @@ babl_conversion_new (const void *first_arg, babl = babl_db_exist (db, id, name); } - babl = conversion_new (name, id, source, destination, linear, plane, planar, + babl = _conversion_new (name, id, source, destination, linear, plane, planar, user_data); /* Since there is not an already registered instance by the required @@ -300,7 +300,8 @@ babl_conversion_linear_process (BablConversion *conversion, void *destination, long n) { - return conversion->function.linear (source, destination, n, conversion->data); + return conversion->function.linear ((void*)conversion, + source, destination, n, conversion->data); } static long @@ -311,7 +312,8 @@ babl_conversion_plane_process (BablConversion *conversion, int dst_pitch, long n) { - return conversion->function.plane (source, destination, + return conversion->function.plane ((void*)conversion, + source, destination, src_pitch, dst_pitch, n, conversion->data); @@ -334,7 +336,8 @@ babl_conversion_planar_process (BablConversion *conversion, memcpy (src_data, source->data, sizeof (void *) * source->components); memcpy (dst_data, destination->data, sizeof (void *) * destination->components); - return conversion->function.planar (source->components, + return conversion->function.planar ((void*)conversion, + source->components, src_data, source->pitch, destination->components, diff --git a/babl/babl-conversion.h b/babl/babl-conversion.h index 902beb5..ac7ade6 100644 --- a/babl/babl-conversion.h +++ b/babl/babl-conversion.h @@ -23,19 +23,22 @@ BABL_CLASS_DECLARE (conversion); const Babl * babl_conversion (const char *name); +typedef struct _BablConversion BablConversion; + + /* Signature of functions registered for reference type * conversions, */ -typedef long (*BablFuncPlane) (const char *src, - char *dst, - int src_pitch, - int dst_pitch, - long n, - void *user_data); - +typedef long (*BablFuncPlane) (BablConversion *conversion, + const char *src, + char *dst, + int src_pitch, + int dst_pitch, + long n, + void *user_data); -typedef struct -BablConversion { +struct +_BablConversion { BablInstance instance; const Babl *source; const Babl *destination; @@ -50,6 +53,6 @@ BablConversion { void *data; /* user data */ int processings; long pixels; -} BablConversion; +}; #endif diff --git a/babl/babl-core.c b/babl/babl-core.c index 00e43e8..d591d73 100644 --- a/babl/babl-core.c +++ b/babl/babl-core.c @@ -22,11 +22,12 @@ #include "util.h" static long -convert_double_double (char *src, - char *dst, - int src_pitch, - int dst_pitch, - long n) +convert_double_double (const Babl *babl, + char *src, + char *dst, + int src_pitch, + int dst_pitch, + long n) { if (src_pitch == 64 && dst_pitch == 64) @@ -77,9 +78,10 @@ convert_double_double (char *src, */ static long -rgba_to_rgba (char *src, - char *dst, - long n) +rgba_to_rgba (const Babl *babl, + char *src, + char *dst, + long n) { memcpy (dst, src, n * sizeof (double) * 4); return n; diff --git a/babl/babl-internal.h b/babl/babl-internal.h index 78f2b56..c193998 100644 --- a/babl/babl-internal.h +++ b/babl/babl-internal.h @@ -319,6 +319,15 @@ static inline double babl_parse_double (const char *str) return result; } +Babl * +_conversion_new (const char *name, + int id, + Babl *source, + Babl *destination, + BablFuncLinear linear, + BablFuncPlane plane, + BablFuncPlanar planar, + void *user_data); double _babl_legal_error (void); void babl_init_db (void); diff --git a/babl/babl-palette.c b/babl/babl-palette.c index ad90608..7284d6b 100644 --- a/babl/babl-palette.c +++ b/babl/babl-palette.c @@ -177,7 +177,8 @@ static BablPalette *default_palette (void) } static long -rgba_to_pal (char *src, +rgba_to_pal (Babl *conversion, + char *src, char *dst, long n, void *dst_model_data) @@ -218,7 +219,8 @@ rgba_to_pal (char *src, } static long -rgba_to_pala (char *src, +rgba_to_pala (Babl *conversion, + char *src, char *dst, long n, void *dst_model_data) @@ -264,7 +266,8 @@ rgba_to_pala (char *src, } static long -pal_to_rgba (char *src, +pal_to_rgba (Babl *conversion, + char *src, char *dst, long n, void *src_model_data) @@ -290,7 +293,8 @@ pal_to_rgba (char *src, } static long -pala_to_rgba (char *src, +pala_to_rgba (Babl *conversion, + char *src, char *dst, long n, void *src_model_data) @@ -320,10 +324,11 @@ pala_to_rgba (char *src, } static long -rgba_u8_to_pal (unsigned char *src, +rgba_u8_to_pal (Babl *conversion, + unsigned char *src, unsigned char *dst, - long n, - void *src_model_data) + long n, + void *src_model_data) { BablPalette **palptr = src_model_data; BablPalette *pal; @@ -342,7 +347,8 @@ rgba_u8_to_pal (unsigned char *src, } static long -rgba_u8_to_pal_a (char *src, +rgba_u8_to_pal_a (Babl *conversion, + char *src, char *dst, long n, void *src_model_data) @@ -364,7 +370,8 @@ rgba_u8_to_pal_a (char *src, } static long -pal_u8_to_rgba_u8 (char *src, +pal_u8_to_rgba_u8 (Babl *conversion, + char *src, char *dst, long n, void *src_model_data) @@ -392,7 +399,8 @@ pal_u8_to_rgba_u8 (char *src, } static long -pala_u8_to_rgba_u8 (char *src, +pala_u8_to_rgba_u8 (Babl *conversion, + char *src, char *dst, long n, void *src_model_data) @@ -424,7 +432,8 @@ pala_u8_to_rgba_u8 (char *src, #include "base/util.h" static inline long -conv_pal8_pala8 (unsigned char *src, unsigned char *dst, long samples) +conv_pal8_pala8 (Babl *conversion, + unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -439,7 +448,8 @@ conv_pal8_pala8 (unsigned char *src, unsigned char *dst, long samples) } static inline long -conv_pala8_pal8 (unsigned char *src, unsigned char *dst, long samples) +conv_pala8_pal8 (Babl *conversion, + unsigned char *src, unsigned char *dst, long samples) { long n = samples; diff --git a/babl/babl-types.h b/babl/babl-types.h index 252a382..e4e5a85 100644 --- a/babl/babl-types.h +++ b/babl/babl-types.h @@ -33,16 +33,19 @@ **/ typedef union _Babl Babl; + /* Conversion function between linear data of a either a data types or * color formats. */ -typedef long (*BablFuncLinear) (const char *src, +typedef long (*BablFuncLinear) (const Babl *conversion, + const char *src, char *dst, long n, void *user_data); /* TypePlanar,ModelPlanar and FormatPlanar */ -typedef long (*BablFuncPlanar) (int src_bands, +typedef long (*BablFuncPlanar) (const Babl *conversion, + int src_bands, const char *src[], int src_pitch[], int dst_bands, diff --git a/babl/base/model-gray.c b/babl/base/model-gray.c index 239333e..d2e7d68 100644 --- a/babl/base/model-gray.c +++ b/babl/base/model-gray.c @@ -110,7 +110,8 @@ models (void) static long -rgba_to_graya (char *src, +rgba_to_graya (Babl *conversion, + char *src, char *dst, long n) { @@ -138,7 +139,8 @@ rgba_to_graya (char *src, } static long -rgba_to_gray (char *src, +rgba_to_gray (Babl *conversion, + char *src, char *dst, long n) { @@ -165,7 +167,8 @@ rgba_to_gray (char *src, static long -rgb_to_gray_2_2 (int src_bands, +rgb_to_gray_2_2 (Babl *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -202,7 +205,8 @@ rgb_to_gray_2_2 (int src_bands, static long -gray_2_2_to_rgb (int src_bands, +gray_2_2_to_rgb (Babl *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -241,7 +245,8 @@ gray_2_2_to_rgb (int src_bands, static long -graya_to_rgba (char *src, +graya_to_rgba (Babl *conversion, + char *src, char *dst, long n) { @@ -270,7 +275,8 @@ graya_to_rgba (char *src, static long -gray_to_rgba (char *src, +gray_to_rgba (Babl *conversion, + char *src, char *dst, long n) { @@ -296,7 +302,8 @@ gray_to_rgba (char *src, } static long -gray_alpha_premultiplied_to_rgba (int src_bands, +gray_alpha_premultiplied_to_rgba (Babl *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -333,7 +340,8 @@ gray_alpha_premultiplied_to_rgba (int src_bands, static long -rgba_to_gray_alpha_premultiplied (int src_bands, +rgba_to_gray_alpha_premultiplied (Babl *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -367,7 +375,8 @@ rgba_to_gray_alpha_premultiplied (int src_bands, } static long -non_premultiplied_to_premultiplied (int src_bands, +non_premultiplied_to_premultiplied (Babl *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -395,7 +404,8 @@ non_premultiplied_to_premultiplied (int src_bands, } static long -premultiplied_to_non_premultiplied (int src_bands, +premultiplied_to_non_premultiplied (Babl *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -430,7 +440,8 @@ premultiplied_to_non_premultiplied (int src_bands, } static long -rgba2gray_gamma_2_2_premultiplied (char *src, +rgba2gray_gamma_2_2_premultiplied (Babl *conversion, + char *src, char *dst, long n) { @@ -458,9 +469,9 @@ rgba2gray_gamma_2_2_premultiplied (char *src, return n; } - static long -gray_gamma_2_2_premultiplied2rgba (char *src, +gray_gamma_2_2_premultiplied2rgba (Babl *conversion, + char *src, char *dst, long n) { diff --git a/babl/base/model-rgb.c b/babl/base/model-rgb.c index 4ba6f7d..69c3b53 100644 --- a/babl/base/model-rgb.c +++ b/babl/base/model-rgb.c @@ -151,7 +151,8 @@ models (void) } static long -copy_strip_1 (int src_bands, +copy_strip_1 (BablConversion *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -182,7 +183,8 @@ copy_strip_1 (int src_bands, } static long -g3_gamma_2_2 (int src_bands, +g3_gamma_2_2 (BablConversion *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -208,7 +210,8 @@ g3_gamma_2_2 (int src_bands, static long -g3_inv_gamma_2_2 (int src_bands, +g3_inv_gamma_2_2 (BablConversion *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -239,7 +242,8 @@ g3_inv_gamma_2_2 (int src_bands, } static long -non_premultiplied_to_premultiplied (int src_bands, +non_premultiplied_to_premultiplied (BablConversion *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -268,7 +272,8 @@ non_premultiplied_to_premultiplied (int src_bands, } static long -premultiplied_to_non_premultiplied (int src_bands, +premultiplied_to_non_premultiplied (BablConversion *conversion, + int src_bands, char **src, int *src_pitch, int dst_bands, @@ -306,7 +311,8 @@ premultiplied_to_non_premultiplied (int src_bands, static long -rgba2rgba_gamma_2_2_premultiplied (char *src, +rgba2rgba_gamma_2_2_premultiplied (BablConversion *conversion, + char *src, char *dst, long samples) { @@ -327,9 +333,10 @@ rgba2rgba_gamma_2_2_premultiplied (char *src, static long -rgba_gamma_2_2_premultiplied2rgba (char *src, - char *dst, - long samples) +rgba_gamma_2_2_premultiplied2rgba (BablConversion *conversion, + char *src, + char *dst, + long samples) { long n = samples; @@ -358,9 +365,10 @@ rgba_gamma_2_2_premultiplied2rgba (char *src, static long -rgba2rgba_gamma_2_2 (char *src, - char *dst, - long samples) +rgba2rgba_gamma_2_2 (BablConversion *conversion, + char *src, + char *dst, + long samples) { long n = samples; @@ -379,7 +387,8 @@ rgba2rgba_gamma_2_2 (char *src, static long -rgba_gamma_2_22rgba (char *src, +rgba_gamma_2_22rgba (BablConversion *conversion, + char *src, char *dst, long samples) { diff --git a/babl/base/model-ycbcr.c b/babl/base/model-ycbcr.c index 6a6370e..c6de014 100644 --- a/babl/base/model-ycbcr.c +++ b/babl/base/model-ycbcr.c @@ -78,7 +78,8 @@ models (void) } static long -rgba_to_ycbcra (char *src, +rgba_to_ycbcra (BablConversion *conversion, + char *src, char *dst, long n) { @@ -112,7 +113,8 @@ rgba_to_ycbcra (char *src, static long -rgba_to_ycbcr (char *src, +rgba_to_ycbcr (BablConversion *conversion, + char *src, char *dst, long n) { @@ -143,7 +145,8 @@ rgba_to_ycbcr (char *src, } static long -ycbcra_to_rgba (char *src, +ycbcra_to_rgba (BablConversion *conversion, + char *src, char *dst, long n) { @@ -177,7 +180,8 @@ ycbcra_to_rgba (char *src, static long -ycbcr_to_rgba (char *src, +ycbcr_to_rgba (BablConversion *conversion, + char *src, char *dst, long n) { diff --git a/babl/base/type-float.c b/babl/base/type-float.c index ce7e407..8c62021 100644 --- a/babl/base/type-float.c +++ b/babl/base/type-float.c @@ -26,7 +26,8 @@ #include "babl-base.h" static long -convert_double_float (char *src, +convert_double_float (BablConversion *conversion, + char *src, char *dst, int src_pitch, int dst_pitch, @@ -42,7 +43,8 @@ convert_double_float (char *src, } static long -convert_float_double (char *src, +convert_float_double (BablConversion *conversion, + char *src, char *dst, int src_pitch, int dst_pitch, diff --git a/babl/base/type-half.c b/babl/base/type-half.c index 61a63ca..64fd15d 100644 --- a/babl/base/type-half.c +++ b/babl/base/type-half.c @@ -184,7 +184,8 @@ static void halfp2doubles(void *target, void *source, long numel) } static long -convert_double_half (char *src, +convert_double_half (BablConversion *conversion, + char *src, char *dst, int src_pitch, int dst_pitch, @@ -200,11 +201,12 @@ convert_double_half (char *src, } static long -convert_half_double (char *src, - char *dst, - int src_pitch, - int dst_pitch, - long n) +convert_half_double (BablConversion *conversion, + char *src, + char *dst, + int src_pitch, + int dst_pitch, + long n) { while (n--) { diff --git a/babl/base/type-u15.c b/babl/base/type-u15.c index 47e3878..ee188e8 100644 --- a/babl/base/type-u15.c +++ b/babl/base/type-u15.c @@ -27,15 +27,16 @@ static inline long -convert_double_u15_scaled (double min_val, - double max_val, - uint16_t min, - uint16_t max, - char *src, - char *dst, - int src_pitch, - int dst_pitch, - long n) +convert_double_u15_scaled (BablConversion *conversion, + double min_val, + double max_val, + uint16_t min, + uint16_t max, + char *src, + char *dst, + int src_pitch, + int dst_pitch, + long n) { while (n--) { @@ -57,8 +58,9 @@ convert_double_u15_scaled (double min_val, } static inline long -convert_u15_double_scaled (double min_val, - double max_val, +convert_u15_double_scaled (BablConversion *conversion, + double min_val, + double max_val, uint16_t min, uint16_t max, char *src, @@ -88,23 +90,24 @@ convert_u15_double_scaled (double min_val, #define MAKE_CONVERSIONS(name, min_val, max_val, min, max) \ static long \ - convert_ ## name ## _double (void *src, \ + convert_ ## name ## _double (BablConversion *conversion, \ + void *src, \ void *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_u15_double_scaled (min_val, max_val, min, max, \ + return convert_u15_double_scaled (conversion, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } \ static long \ - convert_double_ ## name (void *src, \ + convert_double_ ## name (BablConversion *conversion, void *src, \ void *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_double_u15_scaled (min_val, max_val, min, max, \ + return convert_double_u15_scaled (conversion, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } diff --git a/babl/base/type-u16.c b/babl/base/type-u16.c index 9fcad8b..697f1da 100644 --- a/babl/base/type-u16.c +++ b/babl/base/type-u16.c @@ -27,7 +27,8 @@ static inline long -convert_double_u16_scaled (double min_val, +convert_double_u16_scaled (BablConversion *conversion, + double min_val, double max_val, uint16_t min, uint16_t max, @@ -57,7 +58,8 @@ convert_double_u16_scaled (double min_val, } static inline long -convert_u16_double_scaled (double min_val, +convert_u16_double_scaled (BablConversion *conversion, + double min_val, double max_val, uint16_t min, uint16_t max, @@ -88,23 +90,23 @@ convert_u16_double_scaled (double min_val, #define MAKE_CONVERSIONS(name, min_val, max_val, min, max) \ static long \ - convert_ ## name ## _double (void *src, \ + convert_ ## name ## _double (BablConversion *c, void *src, \ void *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_u16_double_scaled (min_val, max_val, min, max, \ + return convert_u16_double_scaled (c, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } \ static long \ - convert_double_ ## name (void *src, \ + convert_double_ ## name (BablConversion *c, void *src, \ void *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_double_u16_scaled (min_val, max_val, min, max, \ + return convert_double_u16_scaled (c, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } diff --git a/babl/base/type-u32.c b/babl/base/type-u32.c index fc38a01..b934dbe 100644 --- a/babl/base/type-u32.c +++ b/babl/base/type-u32.c @@ -26,7 +26,8 @@ #include "babl-base.h" static inline long -convert_double_u32_scaled (double min_val, +convert_double_u32_scaled (BablConversion *c, + double min_val, double max_val, uint32_t min, uint32_t max, @@ -56,7 +57,8 @@ convert_double_u32_scaled (double min_val, } static inline long -convert_u32_double_scaled (double min_val, +convert_u32_double_scaled (BablConversion *c, + double min_val, double max_val, uint32_t min, uint32_t max, @@ -87,23 +89,23 @@ convert_u32_double_scaled (double min_val, #define MAKE_CONVERSIONS(name, min_val, max_val, min, max) \ static long \ - convert_ ## name ## _double (void *src, \ + convert_ ## name ## _double (BablConversion *c, void *src, \ void *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_u32_double_scaled (min_val, max_val, min, max, \ + return convert_u32_double_scaled (c, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } \ static long \ - convert_double_ ## name (void *src, \ + convert_double_ ## name (BablConversion *c, void *src, \ void *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_double_u32_scaled (min_val, max_val, min, max, \ + return convert_double_u32_scaled (c, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } diff --git a/babl/base/type-u8.c b/babl/base/type-u8.c index 9a67a0e..86d889e 100644 --- a/babl/base/type-u8.c +++ b/babl/base/type-u8.c @@ -26,7 +26,8 @@ #include static inline long -convert_double_u8_scaled (double min_val, +convert_double_u8_scaled (BablConversion *c, + double min_val, double max_val, unsigned char min, unsigned char max, @@ -56,7 +57,8 @@ convert_double_u8_scaled (double min_val, } static inline long -convert_u8_double_scaled (double min_val, +convert_u8_double_scaled (BablConversion *c, + double min_val, double max_val, unsigned char min, unsigned char max, @@ -88,23 +90,23 @@ convert_u8_double_scaled (double min_val, #define MAKE_CONVERSIONS(name, min_val, max_val, min, max) \ static long \ - convert_ ## name ## _double (void *src, \ + convert_ ## name ## _double (BablConversion *c, void *src, \ void *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_u8_double_scaled (min_val, max_val, min, max, \ + return convert_u8_double_scaled (c, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } \ static long \ - convert_double_ ## name (void *src, \ + convert_double_ ## name (BablConversion *c, void *src, \ void *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_double_u8_scaled (min_val, max_val, min, max, \ + return convert_double_u8_scaled (c, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } diff --git a/extensions/16bit.c b/extensions/16bit.c index 96701ef..9071fad 100644 --- a/extensions/16bit.c +++ b/extensions/16bit.c @@ -26,7 +26,7 @@ #include "extensions/util.h" static inline long -conv_rgbu16_rgbau16 (unsigned char *src, +conv_rgbu16_rgbau16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) @@ -48,7 +48,7 @@ conv_rgbu16_rgbau16 (unsigned char *src, } static inline long -conv_yu16_yau16 (unsigned char *src, +conv_yu16_yau16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) diff --git a/extensions/CIE.c b/extensions/CIE.c index 040c03c..61c2bce 100644 --- a/extensions/CIE.c +++ b/extensions/CIE.c @@ -300,7 +300,8 @@ LAB_to_XYZ (double L, } static long -rgba_to_lab (char *src, +rgba_to_lab (Babl *babl, + char *src, char *dst, long n) { @@ -328,7 +329,8 @@ rgba_to_lab (char *src, } static long -lab_to_rgba (char *src, +lab_to_rgba (Babl *babl, + char *src, char *dst, long n) { @@ -357,7 +359,8 @@ lab_to_rgba (char *src, } static long -rgba_to_laba (char *src, +rgba_to_laba (Babl *babl, + char *src, char *dst, long n) { @@ -387,7 +390,8 @@ rgba_to_laba (char *src, } static long -laba_to_rgba (char *src, +laba_to_rgba (Babl *babl, + char *src, char *dst, long n) { @@ -441,7 +445,8 @@ ab_to_CHab (double a, } static long -rgba_to_lchab (char *src, +rgba_to_lchab (Babl *babl, + char *src, char *dst, long n) { @@ -472,7 +477,8 @@ rgba_to_lchab (char *src, } static long -lchab_to_rgba (char *src, +lchab_to_rgba (Babl *babl, + char *src, char *dst, long n) { @@ -504,7 +510,8 @@ lchab_to_rgba (char *src, } static long -rgba_to_lchaba (char *src, +rgba_to_lchaba (Babl *babl, + char *src, char *dst, long n) { @@ -537,7 +544,8 @@ rgba_to_lchaba (char *src, } static long -lchaba_to_rgba (char *src, +lchaba_to_rgba (Babl *babl, + char *src, char *dst, long n) { @@ -1143,7 +1151,8 @@ formats (void) /******** begin integer RGB/CIE color space conversions **************/ static inline long -convert_double_u8_scaled (double min_val, +convert_double_u8_scaled (const Babl *babl, + double min_val, double max_val, unsigned char min, unsigned char max, @@ -1173,7 +1182,8 @@ convert_double_u8_scaled (double min_val, } static inline long -convert_u8_double_scaled (double min_val, +convert_u8_double_scaled (const Babl *c, + double min_val, double max_val, unsigned char min, unsigned char max, @@ -1205,23 +1215,23 @@ convert_u8_double_scaled (double min_val, #define MAKE_CONVERSIONS(name, min_val, max_val, min, max) \ static long \ - convert_ ## name ## _double (char *src, \ + convert_ ## name ## _double (const Babl *c, char *src, \ char *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_u8_double_scaled (min_val, max_val, min, max, \ + return convert_u8_double_scaled (c, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } \ static long \ - convert_double_ ## name (char *src, \ + convert_double_ ## name (const Babl *c, char *src, \ char *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_double_u8_scaled (min_val, max_val, min, max, \ + return convert_double_u8_scaled (c, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } @@ -1283,7 +1293,8 @@ types_u8 (void) } static inline long -convert_double_u16_scaled (double min_val, +convert_double_u16_scaled (const Babl *babl, + double min_val, double max_val, unsigned short min, unsigned short max, @@ -1313,7 +1324,8 @@ convert_double_u16_scaled (double min_val, } static inline long -convert_u16_double_scaled (double min_val, +convert_u16_double_scaled (const Babl *babl, + double min_val, double max_val, unsigned short min, unsigned short max, @@ -1344,23 +1356,23 @@ convert_u16_double_scaled (double min_val, #define MAKE_CONVERSIONS(name, min_val, max_val, min, max) \ static long \ - convert_ ## name ## _double (char *src, \ + convert_ ## name ## _double (const Babl *c, char *src, \ char *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_u16_double_scaled (min_val, max_val, min, max, \ + return convert_u16_double_scaled (c, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } \ static long \ - convert_double_ ## name (char *src, \ + convert_double_ ## name (const Babl *c, char *src, \ char *dst, \ int src_pitch, \ int dst_pitch, \ long n) \ { \ - return convert_double_u16_scaled (min_val, max_val, min, max, \ + return convert_double_u16_scaled (c, min_val, max_val, min, max, \ src, dst, src_pitch, dst_pitch, n); \ } diff --git a/extensions/HCY.c b/extensions/HCY.c index 0993842..27a221d 100644 --- a/extensions/HCY.c +++ b/extensions/HCY.c @@ -35,19 +35,19 @@ #define RGB_LUMA_BLUE 0.114 //0.0722 #define EPSILON 1e-10 -static long rgba_to_hcya (char *src, +static long rgba_to_hcya (const Babl *conversion,char *src, char *dst, long samples); -static long hcya_to_rgba (char *src, +static long hcya_to_rgba (const Babl *conversion,char *src, char *dst, long samples); -static long rgba_to_hcy (char *src, +static long rgba_to_hcy (const Babl *conversion,char *src, char *dst, long samples); -static long hcy_to_rgba (char *src, +static long hcy_to_rgba (const Babl *conversion,char *src, char *dst, long samples); @@ -287,7 +287,7 @@ hcy_to_rgba_step (char *src, } static long -rgba_to_hcya (char *src, +rgba_to_hcya (const Babl *conversion,char *src, char *dst, long samples) { @@ -309,7 +309,7 @@ rgba_to_hcya (char *src, } static long -hcya_to_rgba (char *src, +hcya_to_rgba (const Babl *conversion,char *src, char *dst, long samples) { @@ -331,7 +331,7 @@ hcya_to_rgba (char *src, } static long -rgba_to_hcy (char *src, +rgba_to_hcy (const Babl *conversion,char *src, char *dst, long samples) { @@ -349,7 +349,7 @@ rgba_to_hcy (char *src, } static long -hcy_to_rgba (char *src, +hcy_to_rgba (const Babl *conversion,char *src, char *dst, long samples) { diff --git a/extensions/HSL.c b/extensions/HSL.c index 827e028..14d9031 100644 --- a/extensions/HSL.c +++ b/extensions/HSL.c @@ -27,16 +27,16 @@ #define MAX(a,b) ((a < b) ? b : a) #define EPSILON 1.0e-10 -static long rgba_to_hsla (char *src, +static long rgba_to_hsla (const Babl *conversion,char *src, char *dst, long samples); -static long hsla_to_rgba (char *src, +static long hsla_to_rgba (const Babl *conversion,char *src, char *dst, long samples); -static long rgba_to_hsl (char *src, +static long rgba_to_hsl (const Babl *conversion,char *src, char *dst, long samples); -static long hsl_to_rgba (char *src, +static long hsl_to_rgba (const Babl *conversion,char *src, char *dst, long samples); static void rgb_to_hsl_step (double *src, @@ -157,7 +157,7 @@ rgb_to_hsl_step (double* src, static long -rgba_to_hsla (char *src, +rgba_to_hsla (const Babl *conversion,char *src, char *dst, long samples) { @@ -180,7 +180,7 @@ rgba_to_hsla (char *src, static long -rgba_to_hsl (char *src, +rgba_to_hsl (const Babl *conversion,char *src, char *dst, long samples) { @@ -244,7 +244,7 @@ hsl_to_rgb_step (double *src, static long -hsla_to_rgba (char *src, +hsla_to_rgba (const Babl *conversion,char *src, char *dst, long samples) { @@ -267,7 +267,7 @@ hsla_to_rgba (char *src, static long -hsl_to_rgba (char *src, +hsl_to_rgba (const Babl *conversion,char *src, char *dst, long samples) { diff --git a/extensions/HSV.c b/extensions/HSV.c index c830a0c..bcab206 100644 --- a/extensions/HSV.c +++ b/extensions/HSV.c @@ -32,19 +32,19 @@ #define MAX(a,b) (a < b) ? b : a; #define EPSILON 1.0e-10 -static long rgba_to_hsva (char *src, +static long rgba_to_hsva (const Babl *conversion,char *src, char *dst, long samples); -static long hsva_to_rgba (char *src, +static long hsva_to_rgba (const Babl *conversion,char *src, char *dst, long samples); -static long rgba_to_hsv (char *src, +static long rgba_to_hsv (const Babl *conversion,char *src, char *dst, long samples); -static long hsv_to_rgba (char *src, +static long hsv_to_rgba (const Babl *conversion,char *src, char *dst, long samples); @@ -275,7 +275,7 @@ hsv_to_rgba_step (char *src, } static long -rgba_to_hsva (char *src, +rgba_to_hsva (const Babl *conversion,char *src, char *dst, long samples) { @@ -297,7 +297,7 @@ rgba_to_hsva (char *src, } static long -hsva_to_rgba (char *src, +hsva_to_rgba (const Babl *conversion,char *src, char *dst, long samples) { @@ -319,7 +319,7 @@ hsva_to_rgba (char *src, } static long -rgba_to_hsv (char *src, +rgba_to_hsv (const Babl *conversion,char *src, char *dst, long samples) { @@ -337,7 +337,7 @@ rgba_to_hsv (char *src, } static long -hsv_to_rgba (char *src, +hsv_to_rgba (const Babl *conversion,char *src, char *dst, long samples) { diff --git a/extensions/cairo.c b/extensions/cairo.c index 4f82e8d..bd640d9 100644 --- a/extensions/cairo.c +++ b/extensions/cairo.c @@ -26,7 +26,7 @@ int init (void); static inline long -conv_rgba8_cairo24_le (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_cairo24_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; uint32_t *srci = (void *)src; @@ -45,7 +45,7 @@ conv_rgba8_cairo24_le (unsigned char *src, unsigned char *dst, long samples) } static inline long -conv_rgb8_cairo24_le (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_cairo24_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; while (n--) @@ -65,7 +65,7 @@ conv_rgb8_cairo24_le (unsigned char *src, unsigned char *dst, long samples) #if 0 static inline long -conv_rgbA8_premul_cairo32_le (unsigned char *src, unsigned char *dst, long samples) +conv_rgbA8_premul_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; while (n--) @@ -85,7 +85,7 @@ conv_rgbA8_premul_cairo32_le (unsigned char *src, unsigned char *dst, long sampl #else static inline long -conv_rgbA8_premul_cairo32_le (unsigned char *src, unsigned char *dst, long samples) +conv_rgbA8_premul_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; uint32_t *srci = (void *)src; @@ -104,7 +104,7 @@ conv_rgbA8_premul_cairo32_le (unsigned char *src, unsigned char *dst, long sampl } #endif -static long conv_cairo32_rgbA8_premul_le (unsigned char *src, unsigned char *dst, long samples) +static long conv_cairo32_rgbA8_premul_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; while (n--) @@ -123,7 +123,7 @@ static long conv_cairo32_rgbA8_premul_le (unsigned char *src, unsigned char *dst } -static long conv_cairo32_rgbAF_premul_le (unsigned char *src, unsigned char *dst_char, long samples) +static long conv_cairo32_rgbAF_premul_le (const Babl *conversion,unsigned char *src, unsigned char *dst_char, long samples) { long n = samples; float *dst = (void*)dst_char; @@ -143,7 +143,7 @@ static long conv_cairo32_rgbAF_premul_le (unsigned char *src, unsigned char *dst } static inline long -conv_rgbA8_cairo32_le (unsigned char *src, unsigned char *dst, long samples) +conv_rgbA8_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; while (n--) @@ -163,7 +163,7 @@ conv_rgbA8_cairo32_le (unsigned char *src, unsigned char *dst, long samples) } static inline long -conv_rgb8_cairo32_le (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; while (n--) @@ -184,7 +184,7 @@ conv_rgb8_cairo32_le (unsigned char *src, unsigned char *dst, long samples) static inline long -conv_yA8_cairo32_le (unsigned char *src, unsigned char *dst, long samples) +conv_yA8_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; while (n--) @@ -204,7 +204,7 @@ conv_yA8_cairo32_le (unsigned char *src, unsigned char *dst, long samples) } static inline long -conv_yA16_cairo32_le (unsigned char *src, unsigned char *dst, long samples) +conv_yA16_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; uint16_t *ssrc = (void*) src; @@ -222,7 +222,7 @@ conv_yA16_cairo32_le (unsigned char *src, unsigned char *dst, long samples) } static inline long -conv_y8_cairo32_le (unsigned char *src, unsigned char *dst, long samples) +conv_y8_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; while (n--) @@ -237,7 +237,7 @@ conv_y8_cairo32_le (unsigned char *src, unsigned char *dst, long samples) } static inline long -conv_y16_cairo32_le (unsigned char *src, unsigned char *dst, long samples) +conv_y16_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; uint16_t *s16 = (void*)src; @@ -256,7 +256,7 @@ conv_y16_cairo32_le (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbA_gamma_float_cairo32_le (unsigned char *src, +conv_rgbA_gamma_float_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -280,7 +280,7 @@ conv_rgbA_gamma_float_cairo32_le (unsigned char *src, } static long -conv_rgbafloat_cairo32_le (unsigned char *src, +conv_rgbafloat_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -326,7 +326,7 @@ conv_rgbafloat_cairo32_le (unsigned char *src, static long -conv_yafloat_cairo32_le (unsigned char *src, +conv_yafloat_cairo32_le (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { diff --git a/extensions/fast-float.c b/extensions/fast-float.c index 163ffe8..8d5f30b 100644 --- a/extensions/fast-float.c +++ b/extensions/fast-float.c @@ -288,7 +288,7 @@ babl_lookup_free (BablLookup *lookup) #endif static INLINE long -conv_rgbaF_linear_rgbAF_gamma (unsigned char *src, +conv_rgbaF_linear_rgbAF_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -330,7 +330,7 @@ conv_rgbaF_linear_rgbAF_gamma (unsigned char *src, static INLINE long -conv_rgbaF_linear_rgba8_gamma (unsigned char *src, +conv_rgbaF_linear_rgba8_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -367,7 +367,7 @@ conv_rgbaF_linear_rgba8_gamma (unsigned char *src, } static INLINE long -conv_rgbaF_linear_rgbA8_gamma (unsigned char *src, +conv_rgbaF_linear_rgbA8_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -412,7 +412,7 @@ conv_rgbaF_linear_rgbA8_gamma (unsigned char *src, } static INLINE long -conv_yaF_linear_rgbA8_gamma (unsigned char *src, +conv_yaF_linear_rgbA8_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -453,7 +453,7 @@ conv_yaF_linear_rgbA8_gamma (unsigned char *src, static long -conv_rgbaF_linear_rgbA8_gamma_cairo (unsigned char *src, +conv_rgbaF_linear_rgbA8_gamma_cairo (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -498,7 +498,7 @@ conv_rgbaF_linear_rgbA8_gamma_cairo (unsigned char *src, } static INLINE long -conv_rgbAF_linear_rgbAF_gamma (unsigned char *src, +conv_rgbAF_linear_rgbAF_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -539,7 +539,7 @@ conv_rgbAF_linear_rgbAF_gamma (unsigned char *src, } static INLINE long -conv_rgbaF_linear_rgbaF_gamma (unsigned char *src, +conv_rgbaF_linear_rgbaF_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -558,7 +558,7 @@ conv_rgbaF_linear_rgbaF_gamma (unsigned char *src, } static INLINE long -conv_rgbF_linear_rgbF_gamma (unsigned char *src, +conv_rgbF_linear_rgbF_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -577,7 +577,7 @@ conv_rgbF_linear_rgbF_gamma (unsigned char *src, static INLINE long -conv_rgbaF_gamma_rgbaF_linear (unsigned char *src, +conv_rgbaF_gamma_rgbaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -596,7 +596,7 @@ conv_rgbaF_gamma_rgbaF_linear (unsigned char *src, } static INLINE long -conv_rgbF_gamma_rgbF_linear (unsigned char *src, +conv_rgbF_gamma_rgbF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { diff --git a/extensions/float-half.c b/extensions/float-half.c index ff37625..08b7dfb 100644 --- a/extensions/float-half.c +++ b/extensions/float-half.c @@ -178,53 +178,53 @@ static void singles2halfp(void *target, const void *source, long numel) } static inline long -conv_yHalf_yF (const uint16_t *src, float *dst, long samples) +conv_yHalf_yF (const Babl *conversion,const uint16_t *src, float *dst, long samples) { halfp2singles(dst, src, samples); return samples; } static long -conv_yaHalf_yaF (const uint16_t *src, float *dst, long samples) +conv_yaHalf_yaF (const Babl *conversion,const uint16_t *src, float *dst, long samples) { - return conv_yHalf_yF (src, dst, samples * 2) / 2; + return conv_yHalf_yF (conversion, src, dst, samples * 2) / 2; } static long -conv_rgbHalf_rgbF (const uint16_t *src, float *dst, long samples) +conv_rgbHalf_rgbF (const Babl *conversion,const uint16_t *src, float *dst, long samples) { - return conv_yHalf_yF (src, dst, samples * 3) / 3; + return conv_yHalf_yF (conversion, src, dst, samples * 3) / 3; } static long -conv_rgbaHalf_rgbaF (const uint16_t *src, float *dst, long samples) +conv_rgbaHalf_rgbaF (const Babl *conversion,const uint16_t *src, float *dst, long samples) { - return conv_yHalf_yF (src, dst, samples * 4) / 4; + return conv_yHalf_yF (conversion, src, dst, samples * 4) / 4; } static inline long -conv_yF_yHalf (const float *src, uint16_t *dst, long samples) +conv_yF_yHalf (const Babl *conversion,const float *src, uint16_t *dst, long samples) { singles2halfp (dst, src, samples); return samples; } static long -conv_yaF_yaHalf (const float *src, uint16_t *dst, long samples) +conv_yaF_yaHalf (const Babl *conversion,const float *src, uint16_t *dst, long samples) { - return conv_yF_yHalf (src, dst, samples * 2) / 2; + return conv_yF_yHalf (conversion, src, dst, samples * 2) / 2; } static long -conv_rgbF_rgbHalf (const float *src, uint16_t *dst, long samples) +conv_rgbF_rgbHalf (const Babl *conversion,const float *src, uint16_t *dst, long samples) { - return conv_yF_yHalf (src, dst, samples * 3) / 3; + return conv_yF_yHalf (conversion, src, dst, samples * 3) / 3; } static long -conv_rgbaF_rgbaHalf (const float *src, uint16_t *dst, long samples) +conv_rgbaF_rgbaHalf (const Babl *conversion,const float *src, uint16_t *dst, long samples) { - return conv_yF_yHalf (src, dst, samples * 4) / 4; + return conv_yF_yHalf (conversion, src, dst, samples * 4) / 4; } int init (void); diff --git a/extensions/float.c b/extensions/float.c index 9460804..4cea8b5 100644 --- a/extensions/float.c +++ b/extensions/float.c @@ -30,7 +30,7 @@ static INLINE long -conv_rgbaF_linear_rgbAF_gamma (unsigned char *src, +conv_rgbaF_linear_rgbAF_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -50,7 +50,7 @@ conv_rgbaF_linear_rgbAF_gamma (unsigned char *src, } static INLINE long -conv_rgbAF_linear_rgbAF_gamma (unsigned char *src, +conv_rgbAF_linear_rgbAF_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -89,7 +89,7 @@ conv_rgbAF_linear_rgbAF_gamma (unsigned char *src, } static INLINE long -conv_rgbaF_linear_rgbaF_gamma (unsigned char *src, +conv_rgbaF_linear_rgbaF_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -108,7 +108,7 @@ conv_rgbaF_linear_rgbaF_gamma (unsigned char *src, } static INLINE long -conv_rgbF_linear_rgbF_gamma (unsigned char *src, +conv_rgbF_linear_rgbF_gamma (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -127,7 +127,7 @@ conv_rgbF_linear_rgbF_gamma (unsigned char *src, static INLINE long -conv_rgbaF_gamma_rgbaF_linear (unsigned char *src, +conv_rgbaF_gamma_rgbaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -146,7 +146,7 @@ conv_rgbaF_gamma_rgbaF_linear (unsigned char *src, } static INLINE long -conv_rgbF_gamma_rgbF_linear (unsigned char *src, +conv_rgbF_gamma_rgbF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { diff --git a/extensions/gegl-fixups.c b/extensions/gegl-fixups.c index c32968c..96cb6e3 100644 --- a/extensions/gegl-fixups.c +++ b/extensions/gegl-fixups.c @@ -146,7 +146,7 @@ gggl_float_to_index16 (float f) } static INLINE long -conv_F_8 (unsigned char *src, unsigned char *dst, long samples) +conv_F_8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -164,7 +164,7 @@ conv_F_8 (unsigned char *src, unsigned char *dst, long samples) static INLINE long -conv_F_8g (unsigned char *src, unsigned char *dst, long samples) +conv_F_8g (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -182,7 +182,7 @@ conv_F_8g (unsigned char *src, unsigned char *dst, long samples) static INLINE long __attribute__((unused)) -conv_8_F (unsigned char *src, unsigned char *dst, long samples) +conv_8_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -199,7 +199,7 @@ conv_8_F (unsigned char *src, unsigned char *dst, long samples) static INLINE long -conv_rgbaF_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -227,7 +227,7 @@ conv_rgbaF_rgb8 (unsigned char *src, unsigned char *dst, long samples) static INLINE long __attribute__((unused)) -conv_rgbaF_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -259,16 +259,16 @@ conv_rgbaF_rgba8 (unsigned char *src, unsigned char *dst, long samples) #define conv_rgbaF_rgbP8 conv_rgbaF_rgba8 static INLINE long __attribute__((unused)) -conv_rgbF_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8g (src, dst, samples * 3); + conv_F_8g (conversion, src, dst, samples * 3); return samples; } static INLINE long __attribute__((unused)) -conv_gaF_ga8 (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_ga8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 2); + conv_F_8 (conversion, src, dst, samples * 2); return samples; } @@ -278,7 +278,7 @@ conv_gaF_ga8 (unsigned char *src, unsigned char *dst, long samples) static INLINE long -conv_rgba8_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -304,7 +304,7 @@ conv_rgba8_rgbaF (unsigned char *src, unsigned char *dst, long samples) } static INLINE long -conv_rgb8_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -329,7 +329,7 @@ conv_rgb8_rgbaF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbAF_rgb8 (unsigned char *srcc, +conv_rgbAF_rgb8 (const Babl *conversion,unsigned char *srcc, unsigned char *dstc, long samples) { @@ -360,7 +360,7 @@ conv_rgbAF_rgb8 (unsigned char *srcc, } static long -conv_bgrA8_rgba8 (unsigned char *srcc, +conv_bgrA8_rgba8 (const Babl *conversion,unsigned char *srcc, unsigned char *dstc, long samples) { @@ -382,7 +382,7 @@ conv_bgrA8_rgba8 (unsigned char *srcc, } static long -conv_rgbaF_rgbAF (unsigned char *srcc, +conv_rgbaF_rgbAF (const Babl *conversion,unsigned char *srcc, unsigned char *dstc, long samples) { @@ -404,7 +404,7 @@ conv_rgbaF_rgbAF (unsigned char *srcc, } static long -conv_rgbAF_rgbaF (unsigned char *srcc, +conv_rgbAF_rgbaF (const Babl *conversion,unsigned char *srcc, unsigned char *dstc, long samples) { @@ -432,7 +432,7 @@ conv_rgbAF_rgbaF (unsigned char *srcc, static long -conv_rgbAF_lrgba8 (unsigned char *srcc, +conv_rgbAF_lrgba8 (const Babl *conversion,unsigned char *srcc, unsigned char *dstc, long samples) { diff --git a/extensions/gggl-lies.c b/extensions/gggl-lies.c index 3d1627f..76d4d26 100644 --- a/extensions/gggl-lies.c +++ b/extensions/gggl-lies.c @@ -49,7 +49,7 @@ */ static long -conv_F_8 (unsigned char *src, unsigned char *dst, long samples) +conv_F_8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -75,7 +75,7 @@ conv_F_8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_F_16 (unsigned char *src, unsigned char *dst, long samples) +conv_F_16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -103,7 +103,7 @@ conv_F_16 (unsigned char *src, unsigned char *dst, long samples) static long -conv_8_F (unsigned char *src, unsigned char *dst, long samples) +conv_8_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -117,7 +117,7 @@ conv_8_F (unsigned char *src, unsigned char *dst, long samples) } static long -conv_16_F (unsigned char *src, unsigned char *dst, long samples) +conv_16_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -131,7 +131,7 @@ conv_16_F (unsigned char *src, unsigned char *dst, long samples) } static long -conv_F_D (unsigned char *src, unsigned char *dst, long samples) +conv_F_D (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -145,7 +145,7 @@ conv_F_D (unsigned char *src, unsigned char *dst, long samples) } static long -conv_D_F (unsigned char *src, unsigned char *dst, long samples) +conv_D_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -158,7 +158,7 @@ conv_D_F (unsigned char *src, unsigned char *dst, long samples) return samples; } static long -conv_16_8 (unsigned char *src, unsigned char *dst, long samples) +conv_16_8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -173,7 +173,7 @@ conv_16_8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_8_16 (unsigned char *src, unsigned char *dst, long samples) +conv_8_16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -188,25 +188,25 @@ conv_8_16 (unsigned char *src, unsigned char *dst, long samples) /*********/ static long -conv_rgbaF_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 4); + conv_F_8 (conversion, src, dst, samples * 4); return samples; } #define conv_rgbaF_rgbP8 conv_rgbaF_rgba8 static long -conv_rgbF_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 3); + conv_F_8 (conversion, src, dst, samples * 3); return samples; } static long -conv_gaF_ga8 (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_ga8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 2); + conv_F_8 (conversion, src, dst, samples * 2); return samples; } @@ -215,37 +215,37 @@ conv_gaF_ga8 (unsigned char *src, unsigned char *dst, long samples) #define conv_gAF_gA8 conv_gaF_ga8 static long -conv_rgbaF_rgba16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgba16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 4); + conv_F_16 (conversion, src, dst, samples * 4); return samples; } static long -conv_rgbaF_rgbaD (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgbaD (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_D (src, dst, samples * 4); + conv_F_D (conversion, src, dst, samples * 4); return samples; } static long -conv_rgbaD_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaD_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_D_F (src, dst, samples * 4); + conv_D_F (conversion, src, dst, samples * 4); return samples; } static long -conv_rgbF_rgb16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgb16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 3); + conv_F_16 (conversion, src, dst, samples * 3); return samples; } static long -conv_gaF_ga16 (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_ga16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 2); + conv_F_16 (conversion, src, dst, samples * 2); return samples; } @@ -256,23 +256,23 @@ conv_gaF_ga16 (unsigned char *src, unsigned char *dst, long samples) #define conv_gAF_gA16 conv_gaF_ga16 static long -conv_rgba8_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_F (src, dst, samples * 4); + conv_8_F (conversion, src, dst, samples * 4); return samples; } static long -conv_rgb8_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_F (src, dst, samples * 3); + conv_8_F (conversion, src, dst, samples * 3); return samples; } static long -conv_ga8_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_ga8_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_F (src, dst, samples * 2); + conv_8_F (conversion, src, dst, samples * 2); return samples; } @@ -281,23 +281,23 @@ conv_ga8_gaF (unsigned char *src, unsigned char *dst, long samples) #define conv_g8_gF conv_8_F static long -conv_rgba16_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgba16_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 4); + conv_16_F (conversion, src, dst, samples * 4); return samples; } static long -conv_rgb16_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_rgb16_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 3); + conv_16_F (conversion, src, dst, samples * 3); return samples; } static long -conv_ga16_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_ga16_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 2); + conv_16_F (conversion, src, dst, samples * 2); return samples; } @@ -306,23 +306,23 @@ conv_ga16_gaF (unsigned char *src, unsigned char *dst, long samples) #define conv_g16_gF conv_16_F static long -conv_rgba16_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgba16_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_8 (src, dst, samples * 4); + conv_16_8 (conversion, src, dst, samples * 4); return samples; } static long -conv_rgb16_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgb16_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_8 (src, dst, samples * 3); + conv_16_8 (conversion, src, dst, samples * 3); return samples; } static long -conv_ga16_ga8 (unsigned char *src, unsigned char *dst, long samples) +conv_ga16_ga8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_8 (src, dst, samples * 2); + conv_16_8 (conversion, src, dst, samples * 2); return samples; } @@ -331,23 +331,23 @@ conv_ga16_ga8 (unsigned char *src, unsigned char *dst, long samples) #define conv_g16_g8 conv_16_8 static long -conv_rgba8_rgba16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgba16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_16 (src, dst, samples * 4); + conv_8_16 (conversion, src, dst, samples * 4); return samples; } static long -conv_rgb8_rgb16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_rgb16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_16 (src, dst, samples * 3); + conv_8_16 (conversion, src, dst, samples * 3); return samples; } static long -conv_ga8_ga16 (unsigned char *src, unsigned char *dst, long samples) +conv_ga8_ga16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_16 (src, dst, samples * 2); + conv_8_16 (conversion, src, dst, samples * 2); return samples; } @@ -358,7 +358,7 @@ conv_ga8_ga16 (unsigned char *src, unsigned char *dst, long samples) /* alpha conversions */ static long -conv_gaF_gAF (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_gAF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -377,7 +377,7 @@ conv_gaF_gAF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_gAF_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_gAF_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -398,7 +398,7 @@ conv_gAF_gaF (unsigned char *src, unsigned char *dst, long samples) /* alpha stripping and adding */ static long -conv_rgbaF_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -420,7 +420,7 @@ conv_rgbaF_rgbF (unsigned char *src, unsigned char *dst, long samples) static long -conv_gF_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_gF_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -442,7 +442,7 @@ conv_gF_rgbaF (unsigned char *src, unsigned char *dst, long samples) #define conv_gF_rgbAF conv_gF_rgbaF static long -conv_rgbF_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -464,7 +464,7 @@ conv_rgbF_rgbaF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_gaF_gF (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_gF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -479,7 +479,7 @@ conv_gaF_gF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_gF_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_gF_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -501,7 +501,7 @@ conv_gF_gaF (unsigned char *src, unsigned char *dst, long samples) /* colorchannel dropping and adding */ static long -conv_gF_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_gF_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -520,7 +520,7 @@ conv_gF_rgbF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_gaF_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -546,7 +546,7 @@ conv_gaF_rgbaF (unsigned char *src, unsigned char *dst, long samples) /* other conversions coded for some optimisation reason or sumthin */ static long -conv_rgbaF_rgbA8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgbA8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -569,7 +569,7 @@ conv_rgbaF_rgbA8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbaF_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -589,7 +589,7 @@ conv_rgbaF_rgb8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbaF_rgb16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgb16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -609,7 +609,7 @@ conv_rgbaF_rgb16 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgba8_rgbA8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgbA8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -638,7 +638,7 @@ conv_rgba8_rgbA8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbA8_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbA8_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -668,7 +668,7 @@ conv_rgbA8_rgba8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgb8_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -688,7 +688,7 @@ conv_rgb8_rgba8 (unsigned char *src, unsigned char *dst, long samples) #define conv_rgb8_rgbA8 conv_rgb8_rgba8 static long -conv_rgba8_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; diff --git a/extensions/gggl-table-lies.c b/extensions/gggl-table-lies.c index 3e79a6f..8149002 100644 --- a/extensions/gggl-table-lies.c +++ b/extensions/gggl-table-lies.c @@ -150,7 +150,7 @@ gggl_float_to_index16 (float f) static long -conv_F_8 (unsigned char *src, unsigned char *dst, long samples) +conv_F_8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -167,7 +167,7 @@ conv_F_8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_F_16 (unsigned char *src, unsigned char *dst, long samples) +conv_F_16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -184,7 +184,7 @@ conv_F_16 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_8_F (unsigned char *src, unsigned char *dst, long samples) +conv_8_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -200,7 +200,7 @@ conv_8_F (unsigned char *src, unsigned char *dst, long samples) } static long -conv_16_F (unsigned char *src, unsigned char *dst, long samples) +conv_16_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -217,25 +217,25 @@ conv_16_F (unsigned char *src, unsigned char *dst, long samples) /*********/ static long -conv_rgbaF_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 4); + conv_F_8 (conversion, src, dst, samples * 4); return samples; } #define conv_rgbaF_rgbP8 conv_rgbaF_rgba8 static long -conv_rgbF_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 3); + conv_F_8 (conversion, src, dst, samples * 3); return samples; } static long -conv_gaF_ga8 (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_ga8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 2); + conv_F_8 (conversion, src, dst, samples * 2); return samples; } @@ -244,23 +244,23 @@ conv_gaF_ga8 (unsigned char *src, unsigned char *dst, long samples) #define conv_gAF_gA8 conv_gaF_ga8 static long -conv_rgbaF_rgba16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgba16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 4); + conv_F_16 (conversion, src, dst, samples * 4); return samples; } static long -conv_rgbF_rgb16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgb16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 3); + conv_F_16 (conversion, src, dst, samples * 3); return samples; } static long -conv_gaF_ga16 (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_ga16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 2); + conv_F_16 (conversion, src, dst, samples * 2); return samples; } @@ -269,23 +269,23 @@ conv_gaF_ga16 (unsigned char *src, unsigned char *dst, long samples) #define conv_gAF_gA16 conv_gaF_ga16 static long -conv_rgba8_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_F (src, dst, samples * 4); + conv_8_F (conversion, src, dst, samples * 4); return samples; } static long -conv_rgb8_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_F (src, dst, samples * 3); + conv_8_F (conversion, src, dst, samples * 3); return samples; } static long -conv_ga8_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_ga8_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_F (src, dst, samples * 2); + conv_8_F (conversion, src, dst, samples * 2); return samples; } @@ -294,23 +294,23 @@ conv_ga8_gaF (unsigned char *src, unsigned char *dst, long samples) #define conv_g8_gF conv_8_F static long -conv_rgba16_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgba16_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 4); + conv_16_F (conversion, src, dst, samples * 4); return samples; } static long -conv_rgb16_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_rgb16_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 3); + conv_16_F (conversion, src, dst, samples * 3); return samples; } static long -conv_ga16_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_ga16_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 2); + conv_16_F (conversion, src, dst, samples * 2); return samples; } diff --git a/extensions/gggl-table.c b/extensions/gggl-table.c index 071167d..ebb4b85 100644 --- a/extensions/gggl-table.c +++ b/extensions/gggl-table.c @@ -149,7 +149,7 @@ gggl_float_to_index16 (float f) } static long -conv_F_8 (unsigned char *src, unsigned char *dst, long samples) +conv_F_8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -166,7 +166,7 @@ conv_F_8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_F_16 (unsigned char *src, unsigned char *dst, long samples) +conv_F_16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -183,7 +183,7 @@ conv_F_16 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_8_F (unsigned char *src, unsigned char *dst, long samples) +conv_8_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -199,7 +199,7 @@ conv_8_F (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgb8_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -223,7 +223,7 @@ conv_rgb8_rgbaF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_16_F (unsigned char *src, unsigned char *dst, long samples) +conv_16_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -239,7 +239,7 @@ conv_16_F (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbaF_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -268,23 +268,23 @@ conv_rgbaF_rgb8 (unsigned char *src, unsigned char *dst, long samples) /*********/ static long -conv_rgbaF_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 4); + conv_F_8 (conversion, src, dst, samples * 4); return samples; } static long -conv_rgbF_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 3); + conv_F_8 (conversion, src, dst, samples * 3); return samples; } static long -conv_gaF_ga8 (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_ga8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 2); + conv_F_8 (conversion, src, dst, samples * 2); return samples; } @@ -293,23 +293,23 @@ conv_gaF_ga8 (unsigned char *src, unsigned char *dst, long samples) #define conv_gAF_gA8 conv_gaF_ga8 static long -conv_rgbaF_rgba16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgba16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 4); + conv_F_16 (conversion, src, dst, samples * 4); return samples; } static long -conv_rgbF_rgb16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgb16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 3); + conv_F_16 (conversion, src, dst, samples * 3); return samples; } static long -conv_gaF_ga16 (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_ga16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 2); + conv_F_16 (conversion, src, dst, samples * 2); return samples; } @@ -318,22 +318,22 @@ conv_gaF_ga16 (unsigned char *src, unsigned char *dst, long samples) #define conv_gAF_gA16 conv_gaF_ga16 static long -conv_rgba8_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - return conv_8_F (src, dst, samples * 4) / 4; + return conv_8_F (conversion, src, dst, samples * 4) / 4; } static long -conv_rgb8_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - return conv_8_F (src, dst, samples * 3) / 3; + return conv_8_F (conversion, src, dst, samples * 3) / 3; } static long -conv_ga8_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_ga8_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - return conv_8_F (src, dst, samples * 2) / 2; + return conv_8_F (conversion, src, dst, samples * 2) / 2; } #define conv_rgbA8_rgbAF conv_rgba8_rgbaF @@ -341,23 +341,23 @@ conv_ga8_gaF (unsigned char *src, unsigned char *dst, long samples) #define conv_g8_gF conv_8_F static long -conv_rgba16_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgba16_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 4); + conv_16_F (conversion, src, dst, samples * 4); return samples; } static long -conv_rgb16_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_rgb16_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 3); + conv_16_F (conversion, src, dst, samples * 3); return samples; } static long -conv_ga16_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_ga16_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 2); + conv_16_F (conversion, src, dst, samples * 2); return samples; } diff --git a/extensions/gggl.c b/extensions/gggl.c index b01659f..cf0f664 100644 --- a/extensions/gggl.c +++ b/extensions/gggl.c @@ -50,7 +50,7 @@ */ static long -conv_F_8 (unsigned char *src, unsigned char *dst, long samples) +conv_F_8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -70,7 +70,7 @@ conv_F_8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_F_16 (unsigned char *src, unsigned char *dst, long samples) +conv_F_16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -96,7 +96,7 @@ conv_F_16 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_8_F (unsigned char *src, unsigned char *dst, long samples) +conv_8_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -110,7 +110,7 @@ conv_8_F (unsigned char *src, unsigned char *dst, long samples) } static long -conv_16_F (unsigned char *src, unsigned char *dst, long samples) +conv_16_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -124,7 +124,7 @@ conv_16_F (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbaF_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -150,7 +150,7 @@ conv_rgbaF_rgb8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_F_D (unsigned char *src, unsigned char *dst, long samples) +conv_F_D (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -164,7 +164,7 @@ conv_F_D (unsigned char *src, unsigned char *dst, long samples) } static long -conv_D_F (unsigned char *src, unsigned char *dst, long samples) +conv_D_F (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -178,7 +178,7 @@ conv_D_F (unsigned char *src, unsigned char *dst, long samples) } static long -conv_16_8 (unsigned char *src, unsigned char *dst, long samples) +conv_16_8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -193,7 +193,7 @@ conv_16_8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_8_16 (unsigned char *src, unsigned char *dst, long samples) +conv_8_16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -209,23 +209,23 @@ conv_8_16 (unsigned char *src, unsigned char *dst, long samples) /*********/ static long -conv_rgbaF_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 4); + conv_F_8 (conversion, src, dst, samples * 4); return samples; } static long -conv_rgbF_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 3); + conv_F_8 (conversion, src, dst, samples * 3); return samples; } static long -conv_gaF_ga8 (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_ga8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_8 (src, dst, samples * 2); + conv_F_8 (conversion, src, dst, samples * 2); return samples; } @@ -234,23 +234,23 @@ conv_gaF_ga8 (unsigned char *src, unsigned char *dst, long samples) #define conv_gAF_gA8 conv_gaF_ga8 static long -conv_rgbaF_rgba16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgba16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 4); + conv_F_16 (conversion, src, dst, samples * 4); return samples; } static long -conv_rgbF_rgb16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgb16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 3); + conv_F_16 (conversion, src, dst, samples * 3); return samples; } static long -conv_gaF_ga16 (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_ga16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_16 (src, dst, samples * 2); + conv_F_16 (conversion, src, dst, samples * 2); return samples; } @@ -259,22 +259,22 @@ conv_gaF_ga16 (unsigned char *src, unsigned char *dst, long samples) #define conv_gAF_gA16 conv_gaF_ga16 static long -conv_rgba8_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - return conv_8_F (src, dst, samples * 4) / 4; + return conv_8_F (conversion, src, dst, samples * 4) / 4; } static long -conv_rgb8_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - return conv_8_F (src, dst, samples * 3) / 3; + return conv_8_F (conversion, src, dst, samples * 3) / 3; } static long -conv_ga8_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_ga8_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - return conv_8_F (src, dst, samples * 2) / 2; + return conv_8_F (conversion, src, dst, samples * 2) / 2; } #define conv_rgbA8_rgbAF conv_rgba8_rgbaF @@ -282,37 +282,37 @@ conv_ga8_gaF (unsigned char *src, unsigned char *dst, long samples) #define conv_g8_gF conv_8_F static long -conv_rgbaF_rgbaD (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgbaD (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_F_D (src, dst, samples * 4); + conv_F_D (conversion, src, dst, samples * 4); return samples; } static long -conv_rgbaD_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaD_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_D_F (src, dst, samples * 4); + conv_D_F (conversion, src, dst, samples * 4); return samples; } static long -conv_rgba16_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgba16_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 4); + conv_16_F (conversion, src, dst, samples * 4); return samples; } static long -conv_rgb16_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_rgb16_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 3); + conv_16_F (conversion, src, dst, samples * 3); return samples; } static long -conv_ga16_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_ga16_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_F (src, dst, samples * 2); + conv_16_F (conversion, src, dst, samples * 2); return samples; } @@ -321,23 +321,23 @@ conv_ga16_gaF (unsigned char *src, unsigned char *dst, long samples) #define conv_g16_gF conv_16_F static long -conv_rgba16_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgba16_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_8 (src, dst, samples * 4); + conv_16_8 (conversion, src, dst, samples * 4); return samples; } static long -conv_rgb16_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgb16_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_8 (src, dst, samples * 3); + conv_16_8 (conversion, src, dst, samples * 3); return samples; } static long -conv_ga16_ga8 (unsigned char *src, unsigned char *dst, long samples) +conv_ga16_ga8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_16_8 (src, dst, samples * 2); + conv_16_8 (conversion, src, dst, samples * 2); return samples; } @@ -346,23 +346,23 @@ conv_ga16_ga8 (unsigned char *src, unsigned char *dst, long samples) #define conv_g16_g8 conv_16_8 static long -conv_rgba8_rgba16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgba16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_16 (src, dst, samples * 4); + conv_8_16 (conversion, src, dst, samples * 4); return samples; } static long -conv_rgb8_rgb16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_rgb16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_16 (src, dst, samples * 3); + conv_8_16 (conversion, src, dst, samples * 3); return samples; } static long -conv_ga8_ga16 (unsigned char *src, unsigned char *dst, long samples) +conv_ga8_ga16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - conv_8_16 (src, dst, samples * 2); + conv_8_16 (conversion, src, dst, samples * 2); return samples; } @@ -373,7 +373,7 @@ conv_ga8_ga16 (unsigned char *src, unsigned char *dst, long samples) /* alpha conversions */ static long -conv_gaF_gAF (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_gAF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -392,7 +392,7 @@ conv_gaF_gAF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_gAF_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_gAF_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -413,7 +413,7 @@ conv_gAF_gaF (unsigned char *src, unsigned char *dst, long samples) /* alpha stripping and adding */ static long -conv_rgbaF_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -434,7 +434,7 @@ conv_rgbaF_rgbF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbF_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgbF_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -459,7 +459,7 @@ conv_rgbF_rgbaF (unsigned char *src, unsigned char *dst, long samples) static long -conv_gaF_gF (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_gF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -474,7 +474,7 @@ conv_gaF_gF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_gF_gaF (unsigned char *src, unsigned char *dst, long samples) +conv_gF_gaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -496,7 +496,7 @@ conv_gF_gaF (unsigned char *src, unsigned char *dst, long samples) /* colorchannel dropping and adding */ static long -conv_gF_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_gF_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -515,7 +515,7 @@ conv_gF_rgbF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_gaF_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_gaF_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -542,7 +542,7 @@ conv_gaF_rgbaF (unsigned char *src, unsigned char *dst, long samples) static long -conv_rgbaF_rgbA8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgbA8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -565,7 +565,7 @@ conv_rgbaF_rgbA8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbaF_rgb16 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbaF_rgb16 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -585,7 +585,7 @@ conv_rgbaF_rgb16 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbA16_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_rgbA16_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -608,7 +608,7 @@ conv_rgbA16_rgbaF (unsigned char *src, unsigned char *dst, long samples) } static long -conv_gF_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_gF_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -713,7 +713,7 @@ conv_gF_rgbaF (unsigned char *src, unsigned char *dst, long samples) } */ static long -conv_rgba8_rgbA8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgbA8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -742,7 +742,7 @@ conv_rgba8_rgbA8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbA8_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbA8_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -772,7 +772,7 @@ conv_rgbA8_rgba8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgb8_rgba8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgb8_rgba8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples-1; while (n--) @@ -791,7 +791,7 @@ conv_rgb8_rgba8 (unsigned char *src, unsigned char *dst, long samples) #define conv_rgb8_rgbA8 conv_rgb8_rgba8 static long -conv_rgba8_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgba8_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -807,7 +807,7 @@ conv_rgba8_rgb8 (unsigned char *src, unsigned char *dst, long samples) } static long -conv_rgbA8_rgb8 (unsigned char *src, unsigned char *dst, long samples) +conv_rgbA8_rgb8 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { long n = samples; @@ -863,7 +863,7 @@ conv_rgbA8_rgb8 (unsigned char *src, unsigned char *dst, long samples) static long -conv_yuvaF_rgbaF (unsigned char *src, unsigned char *dst, long samples) +conv_yuvaF_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { float *src_f = (float *) src; float *dst_f = (float *) dst; @@ -895,7 +895,7 @@ conv_yuvaF_rgbaF (unsigned char *src, unsigned char *dst, long samples) static long -conv_yuvF_rgbF (unsigned char *src, unsigned char *dst, long samples) +conv_yuvF_rgbF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { float *src_f = (float *) src; float *dst_f = (float *) dst; diff --git a/extensions/gimp-8bit.c b/extensions/gimp-8bit.c index 55bd95c..92e3d6e 100644 --- a/extensions/gimp-8bit.c +++ b/extensions/gimp-8bit.c @@ -52,7 +52,7 @@ tables_init (void) } static INLINE long -u8_linear_to_float_linear (unsigned char *src, +u8_linear_to_float_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -67,7 +67,7 @@ u8_linear_to_float_linear (unsigned char *src, static INLINE long -u8_linear_to_float_linear_premul (unsigned char *src, +u8_linear_to_float_linear_premul (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -88,7 +88,7 @@ u8_linear_to_float_linear_premul (unsigned char *src, } static INLINE long -u8_gamma_2_2_to_float_linear (unsigned char *src, +u8_gamma_2_2_to_float_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -102,28 +102,28 @@ u8_gamma_2_2_to_float_linear (unsigned char *src, } static INLINE long -conv_rgba8_linear_rgbaF_linear (unsigned char *src, +conv_rgba8_linear_rgbaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - u8_linear_to_float_linear (src, dst, samples * 4); + u8_linear_to_float_linear (conversion, src, dst, samples * 4); return samples; } static INLINE long -conv_rgba8_linear_ragabaaF_linear (unsigned char *src, +conv_rgba8_linear_ragabaaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - u8_linear_to_float_linear_premul (src, dst, samples); + u8_linear_to_float_linear_premul (conversion, src, dst, samples); return samples; } static INLINE long -conv_rgba8_gamma_2_2_rgbaF_linear (unsigned char *src, +conv_rgba8_gamma_2_2_rgbaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -142,27 +142,27 @@ conv_rgba8_gamma_2_2_rgbaF_linear (unsigned char *src, } static INLINE long -conv_rgb8_linear_rgbF_linear (unsigned char *src, +conv_rgb8_linear_rgbF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - u8_linear_to_float_linear (src, dst, samples * 3); + u8_linear_to_float_linear (conversion, src, dst, samples * 3); return samples; } static INLINE long -conv_rgb8_gamma_2_2_rgbF_linear (unsigned char *src, +conv_rgb8_gamma_2_2_rgbF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - u8_gamma_2_2_to_float_linear (src, dst, samples * 3); + u8_gamma_2_2_to_float_linear (conversion, src, dst, samples * 3); return samples; } static INLINE long -conv_rgb8_linear_rgbaF_linear (unsigned char *src, +conv_rgb8_linear_rgbaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -183,7 +183,7 @@ conv_rgb8_linear_rgbaF_linear (unsigned char *src, #define conv_rgb8_linear_ragabaaF_linear conv_rgb8_linear_rgbaF_linear static INLINE long -conv_rgb8_gamma_2_2_rgbaF_linear (unsigned char *src, +conv_rgb8_gamma_2_2_rgbaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -202,17 +202,17 @@ conv_rgb8_gamma_2_2_rgbaF_linear (unsigned char *src, } static INLINE long -conv_ga8_linear_gaF_linear (unsigned char *src, +conv_ga8_linear_gaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - u8_linear_to_float_linear (src, dst, samples * 2); + u8_linear_to_float_linear (conversion, src, dst, samples * 2); return samples; } static INLINE long -conv_ga8_gamma_2_2_gaF_linear (unsigned char *src, +conv_ga8_gamma_2_2_gaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -229,7 +229,7 @@ conv_ga8_gamma_2_2_gaF_linear (unsigned char *src, } static INLINE long -conv_ga8_gamma_2_2_rgba8_gamma_2_2 (unsigned char *src, +conv_ga8_gamma_2_2_rgba8_gamma_2_2 (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -247,7 +247,7 @@ conv_ga8_gamma_2_2_rgba8_gamma_2_2 (unsigned char *src, } static INLINE long -conv_ga8_linear_rgbaF_linear (unsigned char *src, +conv_ga8_linear_rgbaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -268,7 +268,7 @@ conv_ga8_linear_rgbaF_linear (unsigned char *src, } static INLINE long -conv_ga8_gamma_2_2_rgbaF_linear (unsigned char *src, +conv_ga8_gamma_2_2_rgbaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -289,27 +289,27 @@ conv_ga8_gamma_2_2_rgbaF_linear (unsigned char *src, } static INLINE long -conv_g8_linear_gF_linear (unsigned char *src, +conv_g8_linear_gF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - u8_linear_to_float_linear (src, dst, samples); + u8_linear_to_float_linear (conversion, src, dst, samples); return samples; } static INLINE long -conv_g8_gamma_2_2_gF_linear (unsigned char *src, +conv_g8_gamma_2_2_gF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { - u8_gamma_2_2_to_float_linear (src, dst, samples); + u8_gamma_2_2_to_float_linear (conversion, src, dst, samples); return samples; } static INLINE long -conv_g8_linear_rgbaF_linear (unsigned char *src, +conv_g8_linear_rgbaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -329,7 +329,7 @@ conv_g8_linear_rgbaF_linear (unsigned char *src, return samples; } static INLINE long -conv_g8_gamma_2_2_rgbaF_linear (unsigned char *src, +conv_g8_gamma_2_2_rgbaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -350,7 +350,7 @@ conv_g8_gamma_2_2_rgbaF_linear (unsigned char *src, } static INLINE long -conv_rgbaF_linear_rgb8_linear (unsigned char *src, +conv_rgbaF_linear_rgb8_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -376,7 +376,7 @@ conv_rgbaF_linear_rgb8_linear (unsigned char *src, } static INLINE long -conv_rgbaF_linear_rgba8_linear (unsigned char *src, +conv_rgbaF_linear_rgba8_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { diff --git a/extensions/grey.c b/extensions/grey.c index a6fef28..b394064 100644 --- a/extensions/grey.c +++ b/extensions/grey.c @@ -37,7 +37,7 @@ static const float RGB_LUMINANCE_GREEN_FLOAT = RGB_LUMINANCE_GREEN; static const float RGB_LUMINANCE_BLUE_FLOAT = RGB_LUMINANCE_BLUE; static long -conv_rgbaF_linear_y8_linear (unsigned char *src, +conv_rgbaF_linear_y8_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -65,7 +65,7 @@ conv_rgbaF_linear_y8_linear (unsigned char *src, } static long -conv_rgbaF_linear_yF_linear (unsigned char *src, +conv_rgbaF_linear_yF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { @@ -88,7 +88,7 @@ conv_rgbaF_linear_yF_linear (unsigned char *src, } static long -conv_rgbaF_linear_yaF_linear (unsigned char *src, +conv_rgbaF_linear_yaF_linear (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples) { diff --git a/extensions/naive-CMYK.c b/extensions/naive-CMYK.c index f92b0d2..339536b 100644 --- a/extensions/naive-CMYK.c +++ b/extensions/naive-CMYK.c @@ -24,19 +24,19 @@ #include "base/util.h" -static long rgba_to_cmyk (char *src, +static long rgba_to_cmyk (const Babl *conversion,char *src, char *dst, long n); -static long cmyk_to_rgba (char *src, +static long cmyk_to_rgba (const Babl *conversion,char *src, char *dst, long n); -static long rgba_to_cmy (char *src, +static long rgba_to_cmy (const Babl *conversion,char *src, char *dst, long n); -static long cmy_to_rgba (char *src, +static long cmy_to_rgba (const Babl *conversion,char *src, char *dst, long n); @@ -127,7 +127,7 @@ init (void) static long -rgba_to_cmyk (char *src, +rgba_to_cmyk (const Babl *conversion,char *src, char *dst, long n) { @@ -177,7 +177,7 @@ rgba_to_cmyk (char *src, } static long -cmyk_to_rgba (char *src, +cmyk_to_rgba (const Babl *conversion,char *src, char *dst, long n) { @@ -218,7 +218,7 @@ cmyk_to_rgba (char *src, } static long -rgba_to_cmy (char *src, +rgba_to_cmy (const Babl *conversion,char *src, char *dst, long n) { @@ -245,7 +245,7 @@ rgba_to_cmy (char *src, } static long -cmy_to_rgba (char *src, +cmy_to_rgba (const Babl *conversion,char *src, char *dst, long n) { diff --git a/extensions/simple.c b/extensions/simple.c index 1430ab1..cd34f1c 100644 --- a/extensions/simple.c +++ b/extensions/simple.c @@ -6,7 +6,7 @@ int init (void); static inline long -float_to_u8_x1 (unsigned char *src_char, unsigned char *dst, long samples) +float_to_u8_x1 (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { float *src = (float *)src_char; long n = samples; @@ -21,27 +21,27 @@ float_to_u8_x1 (unsigned char *src_char, unsigned char *dst, long samples) } static inline long -float_to_u8_x4 (unsigned char *src_char, unsigned char *dst, long samples) +float_to_u8_x4 (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { - return float_to_u8_x1 (src_char, dst, samples * 4); + return float_to_u8_x1 (conversion, src_char, dst, samples * 4); } static inline long -float_to_u8_x3 (unsigned char *src_char, unsigned char *dst, long samples) +float_to_u8_x3 (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { - return float_to_u8_x1 (src_char, dst, samples * 3); + return float_to_u8_x1 (conversion, src_char, dst, samples * 3); } static inline long -float_to_u8_x2 (unsigned char *src_char, unsigned char *dst, long samples) +float_to_u8_x2 (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { - return float_to_u8_x1 (src_char, dst, samples * 2); + return float_to_u8_x1 (conversion, src_char, dst, samples * 2); } static inline long -float_pre_to_u8_pre (unsigned char *src_char, unsigned char *dst, long samples) +float_pre_to_u8_pre (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { float *src = (float *)src_char; long n = samples; @@ -72,7 +72,7 @@ float_pre_to_u8_pre (unsigned char *src_char, unsigned char *dst, long samples) } static inline long -float_to_u16_x1 (unsigned char *src_char, unsigned char *dst_char, long samples) +float_to_u16_x1 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { float *src = (float *)src_char; uint16_t *dst = (uint16_t *)dst_char; @@ -87,23 +87,23 @@ float_to_u16_x1 (unsigned char *src_char, unsigned char *dst_char, long samples) return samples; } static inline long -float_to_u16_x2 (unsigned char *src_char, unsigned char *dst_char, long samples) +float_to_u16_x2 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - return float_to_u16_x1 (src_char, dst_char, samples * 2); + return float_to_u16_x1 (conversion, src_char, dst_char, samples * 2); } static inline long -float_to_u16_x3 (unsigned char *src_char, unsigned char *dst_char, long samples) +float_to_u16_x3 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - return float_to_u16_x1 (src_char, dst_char, samples * 3); + return float_to_u16_x1 (conversion, src_char, dst_char, samples * 3); } static inline long -float_to_u16_x4 (unsigned char *src_char, unsigned char *dst_char, long samples) +float_to_u16_x4 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - return float_to_u16_x1 (src_char, dst_char, samples * 4); + return float_to_u16_x1 (conversion, src_char, dst_char, samples * 4); } static inline long -float_pre_to_u16_pre (unsigned char *src_char, unsigned char *dst_char, long samples) +float_pre_to_u16_pre (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { float *src = (float *)src_char; uint16_t *dst = (uint16_t *)dst_char; @@ -134,7 +134,7 @@ float_pre_to_u16_pre (unsigned char *src_char, unsigned char *dst_char, long sam } static inline long -float_pre_to_u32_pre (unsigned char *src_char, unsigned char *dst_char, long samples) +float_pre_to_u32_pre (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { float *src = (float *)src_char; uint32_t *dst = (uint32_t *)dst_char; @@ -166,7 +166,7 @@ float_pre_to_u32_pre (unsigned char *src_char, unsigned char *dst_char, long sam static inline long -float_to_u32_x1 (unsigned char *src_char, unsigned char *dst_char, long samples) +float_to_u32_x1 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { float *src = (float *)src_char; uint32_t *dst = (uint32_t *)dst_char; @@ -183,24 +183,24 @@ float_to_u32_x1 (unsigned char *src_char, unsigned char *dst_char, long samples) return samples; } static inline long -float_to_u32_x2 (unsigned char *src_char, unsigned char *dst_char, long samples) +float_to_u32_x2 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - return float_to_u32_x1 (src_char, dst_char, samples * 2); + return float_to_u32_x1 (conversion, src_char, dst_char, samples * 2); } static inline long -float_to_u32_x3 (unsigned char *src_char, unsigned char *dst_char, long samples) +float_to_u32_x3 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - return float_to_u32_x1 (src_char, dst_char, samples * 3); + return float_to_u32_x1 (conversion, src_char, dst_char, samples * 3); } static inline long -float_to_u32_x4 (unsigned char *src_char, unsigned char *dst_char, long samples) +float_to_u32_x4 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - return float_to_u32_x1 (src_char, dst_char, samples * 4); + return float_to_u32_x1 (conversion, src_char, dst_char, samples * 4); } static inline long -u32_to_float (unsigned char *src_char, unsigned char *dst_char, long samples) +u32_to_float (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { uint32_t *src = (uint32_t *)src_char; float *dst = (float *)dst_char; @@ -215,30 +215,30 @@ u32_to_float (unsigned char *src_char, unsigned char *dst_char, long samples) } static inline long -u32_to_float_x4 (unsigned char *src_char, unsigned char *dst_char, long samples) +u32_to_float_x4 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - u32_to_float (src_char, dst_char, samples * 4); + u32_to_float (conversion, src_char, dst_char, samples * 4); return samples; } static inline long -u32_to_float_x3 (unsigned char *src_char, unsigned char *dst_char, long samples) +u32_to_float_x3 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - u32_to_float (src_char, dst_char, samples * 3); + u32_to_float (conversion, src_char, dst_char, samples * 3); return samples; } static inline long -u32_to_float_x2 (unsigned char *src_char, unsigned char *dst_char, long samples) +u32_to_float_x2 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - u32_to_float (src_char, dst_char, samples * 2); + u32_to_float (conversion, src_char, dst_char, samples * 2); return samples; } static inline long -u16_to_float (unsigned char *src_char, unsigned char *dst_char, long samples) +u16_to_float (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { uint16_t *src = (uint16_t *)src_char; float *dst = (float *)dst_char; @@ -253,29 +253,29 @@ u16_to_float (unsigned char *src_char, unsigned char *dst_char, long samples) } static inline long -u16_to_float_x4 (unsigned char *src_char, unsigned char *dst_char, long samples) +u16_to_float_x4 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - u16_to_float (src_char, dst_char, samples * 4); + u16_to_float (conversion, src_char, dst_char, samples * 4); return samples; } static inline long -u16_to_float_x3 (unsigned char *src_char, unsigned char *dst_char, long samples) +u16_to_float_x3 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - u16_to_float (src_char, dst_char, samples * 3); + u16_to_float (conversion, src_char, dst_char, samples * 3); return samples; } static inline long -u16_to_float_x2 (unsigned char *src_char, unsigned char *dst_char, long samples) +u16_to_float_x2 (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { - u16_to_float (src_char, dst_char, samples * 2); + u16_to_float (conversion, src_char, dst_char, samples * 2); return samples; } static inline long -yau16_rgbaf (unsigned char *src_char, unsigned char *dst_char, long samples) +yau16_rgbaf (const Babl *conversion,unsigned char *src_char, unsigned char *dst_char, long samples) { uint16_t *src = (uint16_t *)src_char; float *dst = (float *)dst_char; diff --git a/extensions/sse-half.c b/extensions/sse-half.c index e20c214..1a48adb 100644 --- a/extensions/sse-half.c +++ b/extensions/sse-half.c @@ -30,7 +30,7 @@ #include "extensions/util.h" static inline long -conv_yHalf_yF (const uint16_t *src, float *dst, long samples) +conv_yHalf_yF (const Babl *conversion,const uint16_t *src, float *dst, long samples) { const uint64_t *s_vec; __v4sf *d_vec; @@ -63,25 +63,25 @@ conv_yHalf_yF (const uint16_t *src, float *dst, long samples) } static long -conv_yaHalf_yaF (const uint16_t *src, float *dst, long samples) +conv_yaHalf_yaF (const Babl *conversion,const uint16_t *src, float *dst, long samples) { - return conv_yHalf_yF (src, dst, samples * 2) / 2; + return conv_yHalf_yF (conversion, src, dst, samples * 2) / 2; } static long -conv_rgbHalf_rgbF (const uint16_t *src, float *dst, long samples) +conv_rgbHalf_rgbF (const Babl *conversion,const uint16_t *src, float *dst, long samples) { - return conv_yHalf_yF (src, dst, samples * 3) / 3; + return conv_yHalf_yF (conversion, src, dst, samples * 3) / 3; } static long -conv_rgbaHalf_rgbaF (const uint16_t *src, float *dst, long samples) +conv_rgbaHalf_rgbaF (const Babl *conversion,const uint16_t *src, float *dst, long samples) { - return conv_yHalf_yF (src, dst, samples * 4) / 4; + return conv_yHalf_yF (conversion, src, dst, samples * 4) / 4; } static inline long -conv_yF_yHalf (const float *src, uint16_t *dst, long samples) +conv_yF_yHalf (const Babl *conversion,const float *src, uint16_t *dst, long samples) { const __v4sf *s_vec; uint64_t *d_vec; @@ -114,21 +114,21 @@ conv_yF_yHalf (const float *src, uint16_t *dst, long samples) } static long -conv_yaF_yaHalf (const float *src, uint16_t *dst, long samples) +conv_yaF_yaHalf (const Babl *conversion,const float *src, uint16_t *dst, long samples) { - return conv_yF_yHalf (src, dst, samples * 2) / 2; + return conv_yF_yHalf (conversion, src, dst, samples * 2) / 2; } static long -conv_rgbF_rgbHalf (const float *src, uint16_t *dst, long samples) +conv_rgbF_rgbHalf (const Babl *conversion,const float *src, uint16_t *dst, long samples) { - return conv_yF_yHalf (src, dst, samples * 3) / 3; + return conv_yF_yHalf (conversion, src, dst, samples * 3) / 3; } static long -conv_rgbaF_rgbaHalf (const float *src, uint16_t *dst, long samples) +conv_rgbaF_rgbaHalf (const Babl *conversion,const float *src, uint16_t *dst, long samples) { - return conv_yF_yHalf (src, dst, samples * 4) / 4; + return conv_yF_yHalf (conversion, src, dst, samples * 4) / 4; } #endif /* defined(USE_SSE4_1) && defined(USE_F16C) && defined(ARCH_X86_64) */ diff --git a/extensions/sse2-float.c b/extensions/sse2-float.c index 71fa008..1f5468f 100644 --- a/extensions/sse2-float.c +++ b/extensions/sse2-float.c @@ -38,7 +38,7 @@ static const float BABL_ALPHA_THRESHOLD_FLOAT = (float)BABL_ALPHA_THRESHOLD; static long -conv_rgbaF_linear_rgbAF_linear (const float *src, float *dst, long samples) +conv_rgbaF_linear_rgbAF_linear (const Babl *conversion,const float *src, float *dst, long samples) { long i = 0; long remainder; @@ -96,7 +96,7 @@ conv_rgbaF_linear_rgbAF_linear (const float *src, float *dst, long samples) } static long -conv_rgbAF_linear_rgbaF_linear_shuffle (const float *src, float *dst, long samples) +conv_rgbAF_linear_rgbaF_linear_shuffle (const Babl *conversion,const float *src, float *dst, long samples) { long i = 0; long remainder; @@ -164,7 +164,7 @@ conv_rgbAF_linear_rgbaF_linear_shuffle (const float *src, float *dst, long sampl } static long -conv_rgbAF_linear_rgbaF_linear_spin (const float *src, float *dst, long samples) +conv_rgbAF_linear_rgbaF_linear_spin (const Babl *conversion,const float *src, float *dst, long samples) { long i = 0; long remainder; @@ -297,7 +297,7 @@ gamma_2_2_to_linear_sse2 (__v4sf x) #define GAMMA_RGBA(func, munge) \ static inline long \ -func (const float *src, float *dst, long samples)\ +func (const Babl *conversion,const float *src, float *dst, long samples)\ {\ int i = samples;\ if (((uintptr_t)src % 16) + ((uintptr_t)dst % 16) == 0)\ @@ -353,11 +353,11 @@ func (const float *src, float *dst, long samples)\ GAMMA_RGBA(conv_rgbaF_linear_rgbaF_gamma, linear_to_gamma_2_2_sse2) GAMMA_RGBA(conv_rgbaF_gamma_rgbaF_linear, gamma_2_2_to_linear_sse2) -static long conv_rgbaF_linear_rgbAF_gamma (const float *src, float *dst, long samples) +static long conv_rgbaF_linear_rgbAF_gamma (const Babl *conversion,const float *src, float *dst, long samples) { float *tmp = alloca (sizeof(float)*4*samples); - conv_rgbaF_linear_rgbaF_gamma (src, tmp, samples); - conv_rgbaF_linear_rgbAF_linear (tmp, dst, samples); + conv_rgbaF_linear_rgbaF_gamma (conversion, src, tmp, samples); + conv_rgbaF_linear_rgbAF_linear (conversion, tmp, dst, samples); return samples; } @@ -380,7 +380,7 @@ static long conv_rgbaF_linear_rgbAF_gamma (const float *src, float *dst, long sa }\ static long -conv_yaF_linear_yaF_gamma (const float *src, float *dst, long samples) +conv_yaF_linear_yaF_gamma (const Babl *conversion,const float *src, float *dst, long samples) { long total = samples; @@ -418,7 +418,7 @@ conv_yaF_linear_yaF_gamma (const float *src, float *dst, long samples) static long -conv_yaF_gamma_yaF_linear (const float *src, float *dst, long samples) +conv_yaF_gamma_yaF_linear (const Babl *conversion,const float *src, float *dst, long samples) { long total = samples; @@ -455,7 +455,7 @@ conv_yaF_gamma_yaF_linear (const float *src, float *dst, long samples) } static inline long -conv_yF_linear_yF_gamma (const float *src, float *dst, long samples) +conv_yF_linear_yF_gamma (const Babl *conversion,const float *src, float *dst, long samples) { long total = samples; @@ -495,7 +495,7 @@ conv_yF_linear_yF_gamma (const float *src, float *dst, long samples) } static inline long -conv_yF_gamma_yF_linear (const float *src, float *dst, long samples) +conv_yF_gamma_yF_linear (const Babl *conversion,const float *src, float *dst, long samples) { long total = samples; @@ -536,16 +536,16 @@ conv_yF_gamma_yF_linear (const float *src, float *dst, long samples) static long -conv_rgbF_linear_rgbF_gamma (const float *src, float *dst, long samples) +conv_rgbF_linear_rgbF_gamma (const Babl *conversion,const float *src, float *dst, long samples) { - return conv_yF_linear_yF_gamma (src, dst, samples * 3) / 3; + return conv_yF_linear_yF_gamma (conversion, src, dst, samples * 3) / 3; } static long -conv_rgbF_gamma_rgbF_linear (const float *src, float *dst, long samples) +conv_rgbF_gamma_rgbF_linear (const Babl *conversion,const float *src, float *dst, long samples) { - return conv_yF_gamma_yF_linear (src, dst, samples * 3) / 3; + return conv_yF_gamma_yF_linear (conversion, src, dst, samples * 3) / 3; } #endif /* defined(USE_SSE2) */ diff --git a/extensions/sse2-int16.c b/extensions/sse2-int16.c index 843e030..71ae0b2 100644 --- a/extensions/sse2-int16.c +++ b/extensions/sse2-int16.c @@ -35,7 +35,7 @@ static const __v4sf u16_float = Q (1.f / 65535); static long -conv_rgba16_rgbaF (const uint16_t *src, float *dst, long samples) +conv_rgba16_rgbaF (const Babl *conversion,const uint16_t *src, float *dst, long samples) { long i = 0; @@ -71,7 +71,7 @@ conv_rgba16_rgbaF (const uint16_t *src, float *dst, long samples) } static long -conv_rgba16_rgbAF (const uint16_t *src, float *dst, long samples) +conv_rgba16_rgbAF (const Babl *conversion,const uint16_t *src, float *dst, long samples) { long i = 0; long remainder; diff --git a/extensions/sse2-int8.c b/extensions/sse2-int8.c index 5353de6..cfa146e 100644 --- a/extensions/sse2-int8.c +++ b/extensions/sse2-int8.c @@ -31,7 +31,7 @@ #include "extensions/util.h" static inline long -conv_yF_y8 (const float *src, uint8_t *dst, long samples) +conv_yF_y8 (const Babl *conversion,const float *src, uint8_t *dst, long samples) { const __v4sf *s_vec; __m128i *d_vec; @@ -128,28 +128,28 @@ conv_yF_y8 (const float *src, uint8_t *dst, long samples) } static long -conv_yaF_ya8 (const float *src, uint8_t *dst, long samples) +conv_yaF_ya8 (const Babl *conversion,const float *src, uint8_t *dst, long samples) { - return conv_yF_y8 (src, dst, samples * 2) / 2; + return conv_yF_y8 (conversion, src, dst, samples * 2) / 2; } static long -conv_rgbF_rgb8 (const float *src, uint8_t *dst, long samples) +conv_rgbF_rgb8 (const Babl *conversion,const float *src, uint8_t *dst, long samples) { - return conv_yF_y8 (src, dst, samples * 3) / 3; + return conv_yF_y8 (conversion, src, dst, samples * 3) / 3; } static long -conv_rgbaF_rgba8 (const float *src, uint8_t *dst, long samples) +conv_rgbaF_rgba8 (const Babl *conversion,const float *src, uint8_t *dst, long samples) { - return conv_yF_y8 (src, dst, samples * 4) / 4; + return conv_yF_y8 (conversion, src, dst, samples * 4) / 4; } static long -conv_rgbAF_rgbA8 (const float *src, uint8_t *dst, long samples) +conv_rgbAF_rgbA8 (const Babl *conversion,const float *src, uint8_t *dst, long samples) { - return conv_yF_y8 (src, dst, samples * 4) / 4; + return conv_yF_y8 (conversion, src, dst, samples * 4) / 4; } #endif diff --git a/extensions/sse4-int8.c b/extensions/sse4-int8.c index 73f63e3..b6f7c42 100644 --- a/extensions/sse4-int8.c +++ b/extensions/sse4-int8.c @@ -31,7 +31,7 @@ #include "extensions/util.h" static inline long -conv_y8_yF (const uint8_t *src, float *dst, long samples) +conv_y8_yF (const Babl *conversion,const uint8_t *src, float *dst, long samples) { const float factor = 1.0f / 255.0f; const __v4sf factor_vec = {1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f}; @@ -67,21 +67,21 @@ conv_y8_yF (const uint8_t *src, float *dst, long samples) } static long -conv_ya8_yaF (const uint8_t *src, float *dst, long samples) +conv_ya8_yaF (const Babl *conversion,const uint8_t *src, float *dst, long samples) { - return conv_y8_yF (src, dst, samples * 2) / 2; + return conv_y8_yF (conversion, src, dst, samples * 2) / 2; } static long -conv_rgb8_rgbF (const uint8_t *src, float *dst, long samples) +conv_rgb8_rgbF (const Babl *conversion,const uint8_t *src, float *dst, long samples) { - return conv_y8_yF (src, dst, samples * 3) / 3; + return conv_y8_yF (conversion, src, dst, samples * 3) / 3; } static long -conv_rgba8_rgbaF (const uint8_t *src, float *dst, long samples) +conv_rgba8_rgbaF (const Babl *conversion,const uint8_t *src, float *dst, long samples) { - return conv_y8_yF (src, dst, samples * 4) / 4; + return conv_y8_yF (conversion, src, dst, samples * 4) / 4; } #endif diff --git a/extensions/two-table.c b/extensions/two-table.c index 6be18ca..c7344a1 100644 --- a/extensions/two-table.c +++ b/extensions/two-table.c @@ -43,7 +43,7 @@ conv_float_u8_two_table_map (float value) } static long -conv_rgbafloat_linear_cairo24_le (unsigned char *src_char, +conv_rgbafloat_linear_cairo24_le (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { @@ -69,7 +69,7 @@ conv_rgbafloat_linear_cairo24_le (unsigned char *src_char, } static long -conv_rgbfloat_linear_cairo24_le (unsigned char *src_char, +conv_rgbfloat_linear_cairo24_le (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { @@ -89,7 +89,7 @@ conv_rgbfloat_linear_cairo24_le (unsigned char *src_char, } static long -conv_rgbafloat_linear_rgbu8_gamma (unsigned char *src_char, +conv_rgbafloat_linear_rgbu8_gamma (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { @@ -118,7 +118,7 @@ conv_rgbafloat_linear_rgbu8_gamma (unsigned char *src_char, static long -conv_rgbafloat_linear_rgbau8_gamma (unsigned char *src_char, +conv_rgbafloat_linear_rgbau8_gamma (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { @@ -148,7 +148,7 @@ conv_rgbafloat_linear_rgbau8_gamma (unsigned char *src_char, } static long -conv_rgbfloat_linear_rgbu8_gamma (unsigned char *src_char, +conv_rgbfloat_linear_rgbu8_gamma (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { @@ -168,7 +168,7 @@ conv_rgbfloat_linear_rgbu8_gamma (unsigned char *src_char, } static long -conv_yfloat_linear_yu8_gamma (unsigned char *src_char, +conv_yfloat_linear_yu8_gamma (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { @@ -183,7 +183,7 @@ conv_yfloat_linear_yu8_gamma (unsigned char *src_char, } static long -conv_yafloat_linear_yau8_gamma (unsigned char *src_char, +conv_yafloat_linear_yau8_gamma (const Babl *conversion,unsigned char *src_char, unsigned char *dst, long samples) { diff --git a/extensions/ycbcr.c b/extensions/ycbcr.c index 11db563..a7b1e28 100644 --- a/extensions/ycbcr.c +++ b/extensions/ycbcr.c @@ -72,7 +72,7 @@ models (void) static long -rgba_to_ycbcra709 (char *src, +rgba_to_ycbcra709 (const Babl *conversion,char *src, char *dst, long n) { @@ -106,7 +106,7 @@ rgba_to_ycbcra709 (char *src, static long -rgba_to_ycbcr709 (char *src, +rgba_to_ycbcr709 (const Babl *conversion,char *src, char *dst, long n) { @@ -138,7 +138,7 @@ rgba_to_ycbcr709 (char *src, static long -ycbcra709_to_rgba (char *src, +ycbcra709_to_rgba (const Babl *conversion,char *src, char *dst, long n) { @@ -172,7 +172,7 @@ ycbcra709_to_rgba (char *src, static long -ycbcr709_to_rgba (char *src, +ycbcr709_to_rgba (const Babl *conversion,char *src, char *dst, long n) { -- 2.30.2